/*
 * Copyright 2020 HPB Foundation.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *       http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

package com.hpb.bc.entity;

import java.math.BigDecimal;
import java.util.Date;

public class HpbCampaignPeriodNode extends BaseEntity {
    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.id
     *
     * @mbg.generated
     */
    private Integer id;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.node_name
     *
     * @mbg.generated
     */
    private String nodeName;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.node_type
     *
     * @mbg.generated
     */
    private String nodeType;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.node_type_description
     *
     * @mbg.generated
     */
    private String nodeTypeDescription;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.bandwidth
     *
     * @mbg.generated
     */
    private String bandwidth;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.node_address
     *
     * @mbg.generated
     */
    private String nodeAddress;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.lock_amount
     *
     * @mbg.generated
     */
    private BigDecimal lockAmount;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.country
     *
     * @mbg.generated
     */
    private String country;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.country_description
     *
     * @mbg.generated
     */
    private String countryDescription;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.poll_all
     *
     * @mbg.generated
     */
    private Long pollAll;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.location_detail
     *
     * @mbg.generated
     */
    private String locationDetail;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.location_detail_description
     *
     * @mbg.generated
     */
    private String locationDetailDescription;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.node_status
     *
     * @mbg.generated
     */
    private String nodeStatus;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.create_time
     *
     * @mbg.generated
     */
    private Date createTime;

    /**
     * This field was generated by MyBatis Generator.
     * This field corresponds to the database column hpb_campaign_period_node.update_time
     *
     * @mbg.generated
     */
    private Date updateTime;

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.id
     *
     * @return the value of hpb_campaign_period_node.id
     * @mbg.generated
     */
    public Integer getId() {
        return id;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.id
     *
     * @param id the value for hpb_campaign_period_node.id
     * @mbg.generated
     */
    public void setId(Integer id) {
        this.id = id;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.node_name
     *
     * @return the value of hpb_campaign_period_node.node_name
     * @mbg.generated
     */
    public String getNodeName() {
        return nodeName;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.node_name
     *
     * @param nodeName the value for hpb_campaign_period_node.node_name
     * @mbg.generated
     */
    public void setNodeName(String nodeName) {
        this.nodeName = nodeName == null ? null : nodeName.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.node_type
     *
     * @return the value of hpb_campaign_period_node.node_type
     * @mbg.generated
     */
    public String getNodeType() {
        return nodeType;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.node_type
     *
     * @param nodeType the value for hpb_campaign_period_node.node_type
     * @mbg.generated
     */
    public void setNodeType(String nodeType) {
        this.nodeType = nodeType == null ? null : nodeType.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.node_type_description
     *
     * @return the value of hpb_campaign_period_node.node_type_description
     * @mbg.generated
     */
    public String getNodeTypeDescription() {
        return nodeTypeDescription;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.node_type_description
     *
     * @param nodeTypeDescription the value for hpb_campaign_period_node.node_type_description
     * @mbg.generated
     */
    public void setNodeTypeDescription(String nodeTypeDescription) {
        this.nodeTypeDescription = nodeTypeDescription == null ? null : nodeTypeDescription.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.bandwidth
     *
     * @return the value of hpb_campaign_period_node.bandwidth
     * @mbg.generated
     */
    public String getBandwidth() {
        return bandwidth;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.bandwidth
     *
     * @param bandwidth the value for hpb_campaign_period_node.bandwidth
     * @mbg.generated
     */
    public void setBandwidth(String bandwidth) {
        this.bandwidth = bandwidth == null ? null : bandwidth.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.node_address
     *
     * @return the value of hpb_campaign_period_node.node_address
     * @mbg.generated
     */
    public String getNodeAddress() {
        return nodeAddress;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.node_address
     *
     * @param nodeAddress the value for hpb_campaign_period_node.node_address
     * @mbg.generated
     */
    public void setNodeAddress(String nodeAddress) {
        this.nodeAddress = nodeAddress == null ? null : nodeAddress.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.lock_amount
     *
     * @return the value of hpb_campaign_period_node.lock_amount
     * @mbg.generated
     */
    public BigDecimal getLockAmount() {
        return lockAmount;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.lock_amount
     *
     * @param lockAmount the value for hpb_campaign_period_node.lock_amount
     * @mbg.generated
     */
    public void setLockAmount(BigDecimal lockAmount) {
        this.lockAmount = lockAmount;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.country
     *
     * @return the value of hpb_campaign_period_node.country
     * @mbg.generated
     */
    public String getCountry() {
        return country;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.country
     *
     * @param country the value for hpb_campaign_period_node.country
     * @mbg.generated
     */
    public void setCountry(String country) {
        this.country = country == null ? null : country.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.country_description
     *
     * @return the value of hpb_campaign_period_node.country_description
     * @mbg.generated
     */
    public String getCountryDescription() {
        return countryDescription;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.country_description
     *
     * @param countryDescription the value for hpb_campaign_period_node.country_description
     * @mbg.generated
     */
    public void setCountryDescription(String countryDescription) {
        this.countryDescription = countryDescription == null ? null : countryDescription.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.poll_all
     *
     * @return the value of hpb_campaign_period_node.poll_all
     * @mbg.generated
     */
    public Long getPollAll() {
        return pollAll;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.poll_all
     *
     * @param pollAll the value for hpb_campaign_period_node.poll_all
     * @mbg.generated
     */
    public void setPollAll(Long pollAll) {
        this.pollAll = pollAll;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.location_detail
     *
     * @return the value of hpb_campaign_period_node.location_detail
     * @mbg.generated
     */
    public String getLocationDetail() {
        return locationDetail;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.location_detail
     *
     * @param locationDetail the value for hpb_campaign_period_node.location_detail
     * @mbg.generated
     */
    public void setLocationDetail(String locationDetail) {
        this.locationDetail = locationDetail == null ? null : locationDetail.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.location_detail_description
     *
     * @return the value of hpb_campaign_period_node.location_detail_description
     * @mbg.generated
     */
    public String getLocationDetailDescription() {
        return locationDetailDescription;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.location_detail_description
     *
     * @param locationDetailDescription the value for hpb_campaign_period_node.location_detail_description
     * @mbg.generated
     */
    public void setLocationDetailDescription(String locationDetailDescription) {
        this.locationDetailDescription = locationDetailDescription == null ? null : locationDetailDescription.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.node_status
     *
     * @return the value of hpb_campaign_period_node.node_status
     * @mbg.generated
     */
    public String getNodeStatus() {
        return nodeStatus;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.node_status
     *
     * @param nodeStatus the value for hpb_campaign_period_node.node_status
     * @mbg.generated
     */
    public void setNodeStatus(String nodeStatus) {
        this.nodeStatus = nodeStatus == null ? null : nodeStatus.trim();
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.create_time
     *
     * @return the value of hpb_campaign_period_node.create_time
     * @mbg.generated
     */
    public Date getCreateTime() {
        return createTime;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.create_time
     *
     * @param createTime the value for hpb_campaign_period_node.create_time
     * @mbg.generated
     */
    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method returns the value of the database column hpb_campaign_period_node.update_time
     *
     * @return the value of hpb_campaign_period_node.update_time
     * @mbg.generated
     */
    public Date getUpdateTime() {
        return updateTime;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method sets the value of the database column hpb_campaign_period_node.update_time
     *
     * @param updateTime the value for hpb_campaign_period_node.update_time
     * @mbg.generated
     */
    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hpb_campaign_period_node
     *
     * @mbg.generated
     */
    @Override
    public boolean equals(Object that) {
        if (this == that) {
            return true;
        }
        if (that == null) {
            return false;
        }
        if (getClass() != that.getClass()) {
            return false;
        }
        HpbCampaignPeriodNode other = (HpbCampaignPeriodNode) that;
        return (this.getId() == null ? other.getId() == null : this.getId().equals(other.getId()))
                && (this.getNodeName() == null ? other.getNodeName() == null : this.getNodeName().equals(other.getNodeName()))
                && (this.getNodeType() == null ? other.getNodeType() == null : this.getNodeType().equals(other.getNodeType()))
                && (this.getNodeTypeDescription() == null ? other.getNodeTypeDescription() == null : this.getNodeTypeDescription().equals(other.getNodeTypeDescription()))
                && (this.getBandwidth() == null ? other.getBandwidth() == null : this.getBandwidth().equals(other.getBandwidth()))
                && (this.getNodeAddress() == null ? other.getNodeAddress() == null : this.getNodeAddress().equals(other.getNodeAddress()))
                && (this.getLockAmount() == null ? other.getLockAmount() == null : this.getLockAmount().equals(other.getLockAmount()))
                && (this.getCountry() == null ? other.getCountry() == null : this.getCountry().equals(other.getCountry()))
                && (this.getCountryDescription() == null ? other.getCountryDescription() == null : this.getCountryDescription().equals(other.getCountryDescription()))
                && (this.getPollAll() == null ? other.getPollAll() == null : this.getPollAll().equals(other.getPollAll()))
                && (this.getLocationDetail() == null ? other.getLocationDetail() == null : this.getLocationDetail().equals(other.getLocationDetail()))
                && (this.getLocationDetailDescription() == null ? other.getLocationDetailDescription() == null : this.getLocationDetailDescription().equals(other.getLocationDetailDescription()))
                && (this.getNodeStatus() == null ? other.getNodeStatus() == null : this.getNodeStatus().equals(other.getNodeStatus()))
                && (this.getCreateTime() == null ? other.getCreateTime() == null : this.getCreateTime().equals(other.getCreateTime()))
                && (this.getUpdateTime() == null ? other.getUpdateTime() == null : this.getUpdateTime().equals(other.getUpdateTime()));
    }

    /**
     * This method was generated by MyBatis Generator.
     * This method corresponds to the database table hpb_campaign_period_node
     *
     * @mbg.generated
     */
    @Override
    public int hashCode() {
        final int prime = 31;
        int result = 1;
        result = prime * result + ((getId() == null) ? 0 : getId().hashCode());
        result = prime * result + ((getNodeName() == null) ? 0 : getNodeName().hashCode());
        result = prime * result + ((getNodeType() == null) ? 0 : getNodeType().hashCode());
        result = prime * result + ((getNodeTypeDescription() == null) ? 0 : getNodeTypeDescription().hashCode());
        result = prime * result + ((getBandwidth() == null) ? 0 : getBandwidth().hashCode());
        result = prime * result + ((getNodeAddress() == null) ? 0 : getNodeAddress().hashCode());
        result = prime * result + ((getLockAmount() == null) ? 0 : getLockAmount().hashCode());
        result = prime * result + ((getCountry() == null) ? 0 : getCountry().hashCode());
        result = prime * result + ((getCountryDescription() == null) ? 0 : getCountryDescription().hashCode());
        result = prime * result + ((getPollAll() == null) ? 0 : getPollAll().hashCode());
        result = prime * result + ((getLocationDetail() == null) ? 0 : getLocationDetail().hashCode());
        result = prime * result + ((getLocationDetailDescription() == null) ? 0 : getLocationDetailDescription().hashCode());
        result = prime * result + ((getNodeStatus() == null) ? 0 : getNodeStatus().hashCode());
        result = prime * result + ((getCreateTime() == null) ? 0 : getCreateTime().hashCode());
        result = prime * result + ((getUpdateTime() == null) ? 0 : getUpdateTime().hashCode());
        return result;
    }
}